#pragma once

#include "FITKInterfaceCustomDataAPI.h"
#include "FITK_Kernel/FITKCore/FITKAbstractNDataObject.h"
#include "FITK_Kernel/FITKCore/FITKVarientParams.h"
#include "FITK_Kernel/FITKCore/FITKAbstractDataManager.hpp"

namespace Interface
{
	class FITKInterfaceCustomDataAPI FITKCDDataOutlet : public Core::FITKAbstractNDataObject, public Core::FITKVarientParams
    {
    public:
        explicit FITKCDDataOutlet() = default;
        virtual ~FITKCDDataOutlet() = default;

		// SET
		void setMinimum_xyz(double* dVal);
		void setMaximum_xyz(double* dVal);

		// GET
		double* getMinimum_xyz();
		double* getMaximum_xyz();
    };


	class FITKInterfaceCustomDataAPI FITKCDDataOutletManager : public Core::FITKAbstractDataManager<FITKCDDataOutlet>
	{
	public:
		explicit FITKCDDataOutletManager() = default;
		virtual ~FITKCDDataOutletManager() = default;
	};
}

